<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>
<body>

    <script>

        var str = 'hellohello' ;
        // 第一种思路  把字符串转化为数组
        var arr = str.split('') ;
        console.log(arr);
        var newArr = noRepeat(arr) ;
        console.log(newArr);
        // 把数组又转回字符串
        var str2 = newArr.join('') ;
        console.log(str2);



        // 第二种思路
        //    把不重复的字符存入新的字符串

        var str3 = '' ;
        // 遍历原字符串
        for(var i = 0 ; i < str.length ; i++) {
            // 判断在新字符串中是否存在这个字符
            if(!str3.includes(str.charAt(i))) {
                // str3 += str.charAt(i) ;

                // concat 会返回新的字符串   不会改变原字符串
                str3 = str3.concat(str.charAt(i))
            }
        }
        console.log(str3);


        // 第三种思路 
        //    利用对象的键名唯一  去重  。。。。。





        










        // 数组去重
        function noRepeat(arr) {
            // 1 搞一个新的数组
            var newArr = [] ;
            // 2 把原来数组中的每一个值都拿出来
            for(var i = 0 ; i < arr.length ; i++) {
                // 3 在新的数组中判断这个值是否存在    -1表示不存在
                if(newArr.indexOf(arr[i]) === -1) {
                    // 不存在就存入新数组
                    newArr.push(arr[i]) ;
                }
            }
            return newArr 
        }


    </script>
    
</body>
</html>